<?php

/**
 * @package   auto_occasion
 * @subpackage 
 * @author    CMS
 * @copyright 2011
 * @license    All rights reserved
 **/

class annonceCategEquipementSrv {

	/**
	 *Fonction pour afficher la liste des catégories des équipements
	*/
      public function liste($_iOffset, $_iParPage){
          $categ                           = jDao::get("commun~categ_equipement");
          $condition                       = jDao::createConditions();
          $tResult['categ_equipement']     =  $categ->findBy($condition,$_iOffset,$_iParPage)->fetchAll();
          $tResult['nbRecords']            =  $categ->countBy($condition);

          return $tResult;

      }

    /**
    * Fonction pour sauvegarder une option
    * @param object $_categ
    */
    public function ajouter($_categ, $_status){

        $dao                            = jDao::get('commun~categ_equipement');
        $categ                          = new stdClass();
        $categ->lib_categ_equipement    = $_categ;
        $categ->status                  = $_status;

        return  $dao->insert($categ);
    }

	/**
	 * Fonction pour sauvegarder une option
	 * @param object $_categ
	 */
      public function modifier($_categ){
          
        $dao = jDao::get('commun~categ_equipement');
		$categ= $dao->get($_categ->id);
		
		$categ->lib_categ_equipement    = $_categ->lib_categ_equipement;
		$categ->status                  = $_categ->status;

		return  $dao->update($categ);


       }

    /**
    * Fonction permettant d'avoir une option à partir de son id
    * @param object $_id
    */
    public function chargeParId($_id){
      
        $dao                          = jDao::get('commun~categ_equipement');
        return  $dao->get($_id);
    }

	/**
     * Fonction permettant d'initialiser un objet compte
     * @param $login
     * @return object
     *
     */
    public function init () {

        return jDao::createRecord("commun~categ_equipement");
    }

    /**
    *Fonction permattant de tester si une catégorie possède des équipements 
    *
    */
    public function listeCateg(){

        $sql  = " SELECT CE.id_categ_equipement, lib_categ_equipement, ";
        $sql .= " (select 1 from ao_equipement E where E.id_categ_equipement=CE.id_categ_equipement limit 1) as NotSupprimable";
        $sql .= " FROM ao_categ_equipement CE ";
        $jdb     = jDb::getDbWidget();
        $tResult =  $jdb->fetchAll($sql);

        return $tResult;
    }

        /**
     * Fonction permettant de supprimer une catégorie
     * @param $id
     * @return object
     *
     */
    public function supprimer ($id) {

        $maFactory = jDao::get("commun~categ_equipement");

        return  $maFactory->delete($id);
    }


}
